// const o1: object = {}
// const o1: {} = {}

// !一般类型注解的时候声明了对象内部属性的类型，等号左右两边要保持一致
/* const o1: { name: string; age: number;  } = {
  name: 'zs',
  age: 18,
  address: '河南'
} */

const o = {
  name: 'zs',
  age: 18,
  address: '河南'
}
// !一般把右边的对象抽离为了一个变量，右边的数据只要满足左边的类型定义即可，不必完全一样
const o1: { name: string; age: number; } = o

// o3 要能满足类型定义（具有 length 属性，并且值是 number 类型）
// const o3: { length: number } = { length: 8 }
// !下面写法其实也可以通过校验
const o3: { length: number } = 'abc'

// 加上下面这句，使当前文件变成一个独立的模块，和其他地方不会相互影响
export {}